Targeting of a long-range object in a multiplayer game

ABSTRACT

A system and method for improved targeting of a long-range object in a multiplayer online battle arena (MOBA) game is provided. Initially, a touch gesture is received at a tool selection area of a dynamic image provided by the MOBA game, enabling a user to select a tool (e.g., an ability, a virtual weapon, a spell, or the like) to target an object within the virtual world. Next, a second touch gesture is received at a mini-map of the virtual world causing the dynamic image to be automatically adjusted from a perspective corresponding to a character controlled by the user to a perspective representing the location selected within the mini-map. Finally, a third touch gesture is received at a targeting tool providing a target range of the selected tool within the adjusted dynamic image and the user can more precisely and accurately target the object.

BACKGROUND

Video games provide entertainment, competition, and intellectualstimulation for players. In a vast majority of multiplayer online battlearena (MOBA) games or other multiplayer strategy video games,communicating information to a player that is relevant to the player'ssituation is critical to player enjoyment. As such the development,implementation, and functionality of graphical elements in a game's userinterface (UI) are important. For example, MOBA games or othermultiplayer strategy video games oftentimes involve vast virtual worldsor virtual maps in an isometric perspective view. For navigation,communication, and other in-game actions (e.g., targeting) andcommunication within these virtual worlds, maps are often selectable fordisplay within the game.

However, targeting in MOBA games presents challenges as these gamesoften introduce new tools (e.g., abilities, virtual weapons, spells, andthe like) that can be used to target long-range targets. In these games,conventional UIs introduce precision issues for a user targetinglong-range targets. For example, in a typical case, a user is looking ata player object corresponding to the user and when the user aims avirtual joystick, a circle of range for a selected ability is providedfrom the perspective of the player object. In this way, when the useraims the virtual joystick up, the ability is aimed to a position that isrelatively up from the player object.

While this works well for tools that have a circle of range roughlyequal to the screen size, it falls short when the circle of rangeexceeds the screen size. This may be the case when a target is far awayfrom the player object or the tool has a much larger range. In thisscenario, a particular tool may have a linear direction (e.g., shootingan arrow or laser beam across the map). Given the size of the virtualjoystick and the precision that the virtual joystick has available, whenthe user attempts to aim at targets that are far away, a small,pixel-level of movement on the virtual joystick results in massiveshifts within the game space. Moreover, the user may not even be able tosee the target within the display. These UI deficiencies result in anoverall lack of precision and an inability to effectively utilize thenew tools having increased range.

SUMMARY

Embodiments of the present disclosure relate to providing improvedtargeting of a long-range object. More particularly, embodiments relateto systems and methods to accurately and precisely target a playerobject in a MOBA game that is outside the current view of the virtualworld displayed to the user (i.e., not within the dynamic image). Inessence, the described embodiments facilitate the ability toautomatically adjust the perspective of the virtual world from a playerobject corresponding to the user to a location selected on a mini-map.Moreover, the adjusted dynamic image corresponds to a size of the targetrange of a selected tool, enabling the user to target the player objectwithin the view provided by the adjusted dynamic image.

In some example embodiments, the improved targeting of a long-rangeobject is accomplished via an offset camera engine tool thatautomatically adjusts the perspective provided of the virtual world inreal-time while a user is targeting another player object. For instance,a method herein can include the steps of displaying a dynamic imagedepicting objects of a multi-player game on a touchscreen. The dynamicimage is a portion of the virtual world. A first touch gesture may bereceived at a tool selection area of the dynamic image that enables auser to select a tool to target a target object. The method can theninclude receiving a second touch gesture at a mini-map that provides aplan view of at least a portion of the virtual world. The mini-map oftenprovides a full view of the dynamic world and, as such, provides a viewof a larger portion of the virtual world than the dynamic image. Inresponse to receiving the second touch gesture, the dynamic image isautomatically adjusted to a perspective representing a selected locationof the virtual world corresponding to the received second touch gesture.Finally, the method can include receiving a third touch gesture at atargeting tool of the dynamic image. The targeting tool depicts a targetrange of the selected tool within the adjusted dynamic image.

In some embodiments, upon execution of the third touch gesture at thetargeting tool of the dynamic image, the selected tool is utilized onthe target object. Once the selected tool has been utilized on thetarget object, the dynamic image may automatically adjust back to theperspective of the player object corresponding to the user. In someembodiments, the dynamic image may not automatically adjust back to theperspective of the player object corresponding to the user until thetarget object has been eliminated or destroyed.

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present disclosure are described in detail below withreference to the attached drawing figures, wherein:

FIG. 1 depicts an exemplary operating environment in accordance withsome embodiments of the present disclosure;

FIG. 2 is a block diagram illustrating an exemplary implementation of asystem for providing offset camera targeting in accordance with someembodiments of the present disclosure;

FIG. 3 is a block diagram illustrating an exemplary implementation of anoffset camera targeting engine in accordance with some embodiments ofthe present disclosure;

FIG. 4 is an exemplary dynamic image from the perspective of a playerobject corresponding to the user in accordance with some embodiments ofthe present disclosure;

FIGS. 5-8 are exemplary dynamic images from the perspective of alocation selected on a mini-map in accordance with some embodiments ofthe present disclosure;

FIG. 9 is a flow diagram depicting a method for offset camera targetingin accordance with some embodiments of the present disclosure; and

FIG. 10 is a block diagram of an exemplary computing environmentsuitable for use in implementing some embodiments of the presentdisclosure.

DETAILED DESCRIPTION

The subject matter of the present disclosure is described withspecificity herein to meet statutory requirements. However, thedescription itself is not intended to limit the scope of this patent.Rather, the inventors have contemplated that the claimed subject mattermight also be embodied in other ways, to include different steps orcombinations of steps similar to the ones described in this document, inconjunction with other present or future technologies. Moreover,although the terms “step” and/or “block” can be used herein to connotedifferent elements of methods employed, the terms should not beinterpreted as implying any particular order among or between varioussteps herein disclosed unless and except when the order of individualsteps is explicitly described.

The online multiplayer video gaming industry has gained immensepopularity across all demographics around the globe. As onlinemultiplayer video games move to mobile platforms for play on touchscreendevices, such as tablets and smart phones, some modifications arerequired for both how the game is displayed and how users interface withit (e.g., control the game). For instance, size constraints oftouchscreens present various challenges, such targeting long-rangetargets. However, limited screen size and processing capabilities ofsuch touchscreen devices have presented challenges in providing afull-featured multiplayer video game via a mobile platform.

Conventional UIs provide a display from the perspective of the playerobject of the user. This perspective introduces precision issues for auser targeting long-range targets that are off-screen (i.e., notprovided in the current display). Typically, the display provides acircle of range for a selected tool (e.g., an ability, a virtual weapon,a spell, or the like). Although this works well for tools that have acircle of range roughly equal to the screen size, it falls short whenthe circle of range exceeds the screen size. This is problematic whenthe target is far away from the player object or the tool has a muchlarger range than the screen size. Even small, pixel-level of movementson the virtual joystick result in massive shifts within the game space.Since the user may not even be able to see the target within thedisplay, these UI deficiencies result in an overall lack of precisionand an inability to effectively utilize the new tools having increasedrange.

As such, various embodiments of the present disclosure are directed to asystem and computer-implemented method for providing improved targetingof a long-range object. The system and computer-implemented method canbe employed to accurately and precisely target a player object in a MOBAgame that is outside the current view of the dynamic image displayed tothe user. This improved targeting is accomplished by initially receivinga touch gesture at a tool selection area of the dynamic image. Forclarity, the tool selection are enables a user to select a tool (e.g.,an ability, a virtual weapon, a spell, or the like) to target an objectwithin the virtual world. Although touch gesture is used throughout thepresent disclosure, it is contemplated that any user interaction, suchas from use of a mouse, a traditional joystick, a keyboard, a voicecommand, or other method, is contemplated and within the scope of theclaims.

Next, a second touch gesture is received at a mini-map of the virtualworld. In response to receiving the second touch gesture, the dynamicimage is automatically adjusted to a perspective representing thelocation selected within the mini-map. Once the perspective changes fromthe point of view of a character controlled by the user to the locationspecified by the second touch gesture, a third touch gesture can bereceived at a targeting tool providing a target range of the selectedtool within the adjusted dynamic image. This enables the user to moreprecisely and accurately target the object. In other words, theperspective of the dynamic image snaps to the location selected withinthe mini-map and the adjusted dynamic image corresponds to a size of thetarget range of the selected tool. Accordingly, the user is able totarget the target object within the display provided by the adjusteddynamic image. In some embodiments, the third touch gesture may enablethe user to rotate the perspective 360 degrees around the selectedlocation of the mini-map.

Turning now to FIG. 1, a schematic depiction is provided illustratingone exemplary operating environment 100 of which an embodiment of thepresent disclosure can be employed. It should be understood that thisand other arrangements described herein are set forth only as examples.Other arrangements and elements (e.g., machines, interfaces, functions,orders, groupings of functions, etc.) can be used in addition to orinstead of those shown, and some elements may be omitted altogether.Further, many of the elements described herein are functional entitiesthat may be implemented as discrete or distributed components or inconjunction with other components, and in any suitable combination andlocation. Various functions described herein as being performed by oneor more entities may be carried out by hardware, firmware, and/orsoftware. For instance, various functions may be carried out by aprocessor executing instructions stored in memory.

The operating environment 100 of FIG. 1 includes a server device 110that provides a service to one or more client devices, such as gamingclients 115,120, for instructing game play and/or settings in a virtualgaming environment over a network 130, such as the Internet. The gamingclients 115,120 may be implemented on one or more processors as laterdescribed herein. In some embodiments, the gaming clients 115,120 aremobile electronic devices having touchscreens thereon, such as smartphones, tablets, or laptop computers. The server device 110 and thegaming clients 115,120 may communicate in a wired or wireless mannerover the network 130.

In some embodiments, the server device 110 is coupled, directly orindirectly, to a database 140 for facilitating the storage and queryingof records corresponding to a plurality of game play instructions,actions, objects (e.g., virtual game pieces/characters, weapons,buildings, etc.), maps, and/or settings. The database 140 includes,among other things, a relational database or similar storage structureaccessible by the server device 110. In accordance with embodimentsdescribed herein, the database 140 stores a plurality of records thateach corresponds to game play instructions, actions, objects, maps,and/or settings.

The server device 110 includes a gaming server accessible by any of thegaming clients 115,120 and/or a data server for supporting anapplication of any of the gaming clients 115,120, over the network 130.The gaming server can support any type of application, including thosethat facilitate live game play. The server device 110 can furtherdetermine relationships (e.g., teams) between the gaming clients115,120. In various embodiments, the server device 110 communicatesactions commanded via one or more of the gaming clients 115,120, toanother one or more of the gaming clients 115,120 for presentationthereon via user interfaces or the like, as later described herein.

Network 130 may be wired, wireless, or both. Network 130 may includemultiple networks, or a network of networks, but is shown in simple formso as not to obscure aspects of the present disclosure. By way ofexample, network 130 can include one or more wide area networks (WANs),one or more local area networks (LANs), one or more public networks,such as the Internet, one or more private networks, and/or one or moretelecommunications networks. Where network 130 includes a wirelesstelecommunications network, components such as a base station, acommunications tower, or even access points (as well as othercomponents) may provide wireless connectivity. Networking environmentsare commonplace in enterprise-wide computer networks, intranets, and theInternet. Accordingly, network 130 is not described in significantdetail.

In accordance with embodiments of the present disclosure, the serverdevice 110 or the gaming clients 115, 120 can each be a computing devicethat is capable of accessing the Internet, such as the World Wide Web,and/or a telecommunications network. Either one of the server device 110or the gaming clients 115, 120 might take on a variety of forms, such asa personal computer (PC), a laptop computer, a mobile phone, a tabletcomputer, a wearable computer, a personal digital assistant (PDA), anMP3 player, a global positioning system (GPS) device, a video player, ahandheld communications device, a smartphone, a smart watch, aworkstation, any combination of these delineated devices, or any othersuitable device.

It should be understood that any number of the aforementioned devicesmay be employed in operating environment 100 within the scope of thepresent disclosure. Each may comprise a single device or multipledevices cooperating in a distributed environment. Additionally, othercomponents not shown may also be included within the distributedenvironment. It should further be understood that operating environment100 shown in FIG. 1 is an example of one suitable computing systemarchitecture. Each of the servers, gaming clients, networks, anddatabases shown in FIG. 1 may be implemented via a computing device,such as computing device 1000, later described with reference for FIG.10, for example. The components may communicate with each other vianetwork 130.

Next, FIG. 2 depicts a block diagram of operational modules of anexemplary one of the gaming clients, specifically gaming client 115, inaccordance with some embodiments of the present disclosure. It is notedthat the depicted implementation is merely exemplary, and not intendedto be limiting in any way, as each component can be arranged in variousconfigurations, spread across a number of computing devices, combinedwith other components or one another, arranged to communicate over anetwork, or any combination of the foregoing including others notmentioned. For example, each of the operational modules may comprise acombination of hardware components and/or computer instructions storedon computer-readable media and executable on a processor thereof, aslater described in regards to computing device 1000 below.

As depicted in FIG. 2, the operational modules of the gaming client 115may comprise a game executing component 210, a communication component220, and offset camera targeting engine 230. The game executingcomponent 210 can be configured for executing a game associatedtherewith, such as MOBA games described herein. In some embodiments,executing the game may include displaying a dynamic image, such as thedynamic image 400, 500, 600, 700, 800 later described herein anddepicted in FIGS. 4-8. The communication component 220 can be configuredfor network communications between the gaming client 115, the gamingclient 120, and/or the server device 110 via network 130. Generally, theoffset camera targeting engine 230 can be configured for dynamicallyaltering the perspective of the dynamic image. In particular, the offsetcamera targeting engine 230 dynamically alters the perspective from theplayer object corresponding to the user to a center point that matchesthe maximum range of a joystick corresponding to a particular ability atthe location the user has selected from a mini-map. For clarity, amini-map typically enables a player to quickly view, at a high level,multiple locations in the game's world while maintaining a view centeredon the player object corresponding to the user.

As shown in FIG. 3, the offset camera targeting engine 230 includesseveral components. For example, the offset camera targeting engine 230may include a display component 310, a tool component 320, a mini-mapcomponent 330, and a targeting component 340. Initially, the displaycomponent 310 displays a dynamic image depicting objects of amultiplayer game on a touchscreen. The objects of the multi-player gamecomprise player objects and nonplayer objects. In a non-targetingscenario, the dynamic image depicts the objects from the perspective ofa player object corresponding to the user.

The tool component 320 receives a first touch gesture at a toolselection of the dynamic image. The tool selection area enables a userto set a tool to utilize on a target object of the objects within thevirtual world. As described herein, the tool may be an ability, avirtual weapon, a spell, or the like. Next, the mini-map component 330receives a second touch gesture at a mini-map. The mini-map provides aplan view of at least a portion of the virtual world and may provide aview of targets (i.e., other player objects) outside the view of thedynamic image. In response to the mini-map component 330 receiving thesecond touch gesture, the display component 310 automatically adjuststhe dynamic image to a perspective representing a selected location ofthe virtual world corresponding to the received second touch gesture. Inthis way, the dynamic image is automatically changed from theperspective of the player object corresponding to the user to aperspective of the selected location.

Finally, targeting component 340 receives a third touch gesture at atargeting tool of the dynamic image. The targeting tool depicts a targetrange of the selected tool within the adjusted dynamic image. Thisallows the user to make more precise targeting movements to target thetarget object within the adjusted dynamic image than is possible withinthe dynamic image, in part because the target object may actually bevisible within the adjusted dynamic image, and in part because theadjusted dynamic image may be adjusted in size based on the radius ofthe target range. As can be appreciated, this allows eliminates theproblems of conventional UIs where small targeting movements result inlarge movements within the dynamic image. Consequently, the user is ableto more precisely and accurately target the target object.

In some embodiments, upon execution of the third touch gesture at thetargeting tool of the dynamic image, targeting component 340 causes theselected tool to be utilized on the target object. In some embodiments,upon the selected tool being utilized on the target object, the displaycomponent 310 automatically adjusts the adjusted dynamic image back tothe perspective of a player object corresponding to the user (i.e., thedynamic image). Alternatively, the display component 310 may notautomatically adjusted the adjusted dynamic image back to theperspective of the player object corresponding to the user until thetarget object has been eliminated or destroyed. In some embodiments, thedisplay component 310 may automatically adjusted the adjusted dynamicimage back to the perspective of the player object corresponding to theuser if the player object is under attack, being threatened, or beingtargeted by another player object (such as another player objectdifferent from the player object the user is currently targeting).

Turning now to FIGS. 4-7, exemplary depictions of a dynamic images 400,500, 600, 700, 800 are provided from various perspectives, in accordancewith some embodiments of the present disclosure. Such dynamic images400, 500, 600, 700, 800 may be provided by a touchscreen of a mobileelectronic device. The mobile electronic device can include thecomputing device 1000 as described below and depicted in FIG. 10.Likewise, the touchscreen can comprise any of the I/O components 1020described below and depicted in FIG. 10. For example, the touchscreencan particularly comprise embodiments of I/O components 1020 withgesture recognition on screen and touch recognition associated with adisplay of the computing device 1000.

As illustrated, dynamic images 400, 500, 600, 700, 800 can includemovable images or images with objects movable in real-time therein, suchas video images, animated images, images comprising movable game pieces,or the like. For example, dynamic images 400, 500, 600, 700, 800 caninclude visual depictions of at least a portion of a dynamic virtualworld for a multiplayer game (e.g., a MOBA game or the like). The visualdepictions can comprise fixed graphic objects, such as non-playerobjects, and movable graphic objects, such as player objects. Visualdepictions can include, among other things, animated and/or movable gamepieces and/or destinations such as towers, castles, roads, pathways,walls, fences, barricades, trees, mountains, streams, weapons, targets,rewards, or the like. Game pieces, such as player objects 410, 760, 860can represent locations of various players in the multiplayer gameand/or tools (e.g., an ability, a virtual weapon, a spell, or the like)useable by the various players. The visual depictions can display suchfixed or movable graphic objects in a perspective view and/or a planview. However, the system and methods herein can be used within otherdynamic images that are not part of a multiplayer game or a singleplayer game without departing from the scope of the technology describedherein.

As mentioned, in some embodiments, dynamic images 400, 500, 600, 700,800 can include a continually-displayed or selectably-displayed mini-map420, 520, 620, 720, 820. The mini-map 420, 520, 620, 720, 820 or othersuch graphic depiction may provide a plan view of the dynamic virtualworld in its entirety and/or large portions of the dynamic virtualworld. Dynamic images 400, 500, 600, 700, 800 may also includecontinually-displayed or selectably-displayed tools, such as tools 430,532, 632, 732, 832. Once a tool has been selected, a targeting toolprovides a target range of the selected tool within the dynamic image.

Turning now to FIG. 4, the mini-map 420 can be used to present abig-picture view of the entire dynamic virtual world, current conditionswithin that virtual world, current locations of a player's teammates, aswell as other features of the game. As shown in FIG. 4, the dynamicimage 400 is provided from the perspective of a player objectcorresponding to the user 410. Also shown in FIG. 4 is a tool selectionarea 430 that enables the user to select from a variety of tools thatmay be employed by the user to target other player objects.

As depicted in FIG. 5, a tool 532 may be selected by the user by makinga touch gesture within the tool selection area of the dynamic image. Atouch gesture can include, for instance, tapping the touchscreen withone or more fingers, one or more thumbs, a stylus, or other suchselection tool. A second touch gesture may be received at a location 522within the mini-map 520. In response to the second touch gesture, thedynamic image is automatically adjusted to a perspective representing aselected location 522 of the mini-map 520 corresponding to the receivedsecond touch gesture. As shown, an area of the view 524 provided by theadjusted dynamic image 500 is visible within the mini-map 520. A thirdtouch gesture 536 may be received at a targeting tool 534 of theadjusted dynamic image. The targeting tool 534 depicts a target range ofthe selected tool 532 within the adjusted dynamic image 500 and thethird touch gesture 536 indicates where the user is targeting within thetarget range. The targeted area 546 is also displayed within theadjusted dynamic image 500.

In FIG. 6, a tool 632 may be selected by the user by making a touchgesture within the tool selection area of the dynamic image. A secondtouch gesture may be received at a location 622 within the mini-map 620.In response to the second touch gesture, the dynamic image isautomatically adjusted to a perspective representing the selectedlocation 622 of the mini-map 620 corresponding to the received secondtouch gesture. As shown, an area of the view 624 provided by theadjusted dynamic image 600 is visible within the mini-map 620. A thirdtouch gesture 636 may be received at a targeting tool 634 of theadjusted dynamic image. The targeting tool 634 depicts a target range ofthe selected tool 632 within the adjusted dynamic image 600 and thethird touch gesture 636 indicates where the user is targeting within thetarget range 634. Guidelines 650, 652 representing the target path ofthe selected tool is also displayed within the adjusted dynamic image600. Additionally, the target path 628 may be represented within themini-map 620.

Referring next to FIG. 7, a tool 732 may be selected by the user bymaking a touch gesture within the tool selection area of the dynamicimage. A second touch gesture may be received at a location 722 withinthe mini-map 720. In response to the second touch gesture, the dynamicimage is automatically adjusted to a perspective representing theselected location 722 of the mini-map 720 corresponding to the receivedsecond touch gesture. As shown, an area of the view 724 provided by theadjusted dynamic image 700 is visible within the mini-map 720. A thirdtouch gesture 736 may be received at a targeting tool 734 of theadjusted dynamic image 700. The targeting tool 734 depicts a targetrange of the selected tool within the adjusted dynamic image 700 and thethird touch gesture 736 indicates where the user is targeting within thetarget range 734. Guidelines 750, 752 representing the target path ofthe selected tool 732 is also displayed within the adjusted dynamicimage 700. Additionally, the target path 728 may be represented withinthe mini-map 720. As illustrated by FIG. 7, the user has rotated thetarget path so that the target object 760 being targeted by the user isnow within the guidelines 750, 752. A health status bar 780 may beprovided within the adjusted dynamic image 700 to display the healthstatus of the target object.

As illustrated in FIG. 8, a tool 832 may be selected by the user bymaking a touch gesture within the tool selection area of the dynamicimage. A second touch gesture may be received at a location 822 withinthe mini-map 820. In response to the second touch gesture, the dynamicimage is automatically adjusted to a perspective representing theselected location 822 of the mini-map 820 corresponding to the receivedsecond touch gesture. As shown, an area of the view 824 provided by theadjusted dynamic image 800 is visible within the mini-map 820. A thirdtouch gesture 836 may be received at a targeting tool 834 of theadjusted dynamic image 800. The targeting tool 834 depicts a targetrange of the selected tool 832 within the adjusted dynamic image 800 andthe third touch gesture 836 indicates where the user is targeting withinthe target range 834. In FIG. 8, the user has executed the third touchgesture 836 and the selected tool 832 is utilized on the target object860. The third touch gesture 836 may be executed by applying additionalpressure to the touchscreen, making an additional tap on thetouchscreen, and the like. Accordingly, the selected tool 832 isutilized 890 on the target object 860. The health status bar 880 may beupdated within the adjusted dynamic image 800 to display the healthstatus of the target object 860 after the selected tool 832 has beenutilized.

Now referring to FIG. 9, each block of method, described herein,comprises a computing process that can be performed using anycombination of hardware, firmware, and/or software. For instance,various functions can be carried out by a processor executinginstructions stored in memory. The method can also be embodied ascomputer-usable instructions stored on computer storage media. Themethod 900 can be provided by a standalone application, a service orhosted service (standalone or in combination with another hostedservice), or a plug-in to another product, to name a few. For example,as described herein, the method 900 is a virtual tool within othersoftware such as a virtual game. In addition, the method 900 isdescribed, by way of example, with respect to the dynamic image on thetouchscreen of FIGS. 4-8. However, these methods can additionally oralternatively be executed by any one system, or any combination ofsystems, including, but not limited to, those described herein.

In FIG. 9, a flow diagram depicts a method 900 for providing improvedtargeting of a long-range object, in accordance with some embodiments ofthe present disclosure. In accordance with various embodiments, themethod 900 can be employed to accurately and precisely target a playerobject in a MOBA game that is outside the current view of the dynamicimage displayed to the user. As depicted in block 902, the method 900can comprise a step of displaying a dynamic image depicting objects of amulti-player game on a touchscreen, the dynamic image being a portion ofa virtual world. The virtual world, as described above, can include themini-map or other dynamic images with fixed and movable graphic objects.For example, the mini-map can be opened by a tap or click onto a mapicon, or the mini-map can remain open throughout game play in themultiplayer game manipulated via the touchscreen.

Furthermore, as depicted in block 904, the method 900 can comprise,receiving a first touch gesture at a tool selection area of the dynamicimage. The tool selection area enables a user to select a tool toutilize on a target object of the objects within the virtual world. Theobjects of the multi-player game may comprise player objects andnon-player objects. In some embodiments, the dynamic image initiallydepicts a portion of the virtual world (e.g., objects of themulti-player game) from the perspective of a player object correspondingto the user.

As depicted in block 906, the method 900 can also comprise, receiving asecond touch gesture, at a mini-map of the virtual world. As describedabove, the mini-map provides a plan view of at least a portion of thevirtual world. The second touch gesture enables, for example, a user toselect an area of the mini-map that is not displayed by the initiallyprovided dynamic image.

The method 900 can also comprise, as depicted at block 908, in responseto the second touch gesture, adjusting the dynamic image to aperspective representing a selected location of the virtual worldcorresponding to the received second touch gesture. In other words, thedynamic image automatically adjusts to show a perspective from the areaselected within the mini-map, rather than from the viewpoint of theplayer object corresponding to the user (i.e., the hero). As can beappreciated, this provides a mini-map-centric view rather than ahero-centric view.

Moreover, a user is able to view a lower level view of the area selectedwithin the mini-map than the high level view provided by the initiallyprovided dynamic image. For example, if the user is attempting to targeta player object that was previously outside the display of the dynamicimage but is within the area selected within the mini-map, the user maybe able to view the player object within the adjusted dynamic image.

As depicted in block 910, the method 900 can also comprise receiving athird touch gesture at a targeting tool of the dynamic image. Thetargeting tool depicts a target range of the selected tool within theadjusted dynamic image. In some embodiments, the adjusted dynamic isapproximately the size of the target range of the selected tool whichenables the user to make more precise targeting movements to target thetarget object within the adjusted dynamic image than is possible withinthe initially provided dynamic image. As can be appreciated, theinitially provided dynamic image may provide a view that is smaller thanthe size of the target range (and in some cases, much smaller). In otherwords, alternatively or additionally, the dynamic image may be adjustedbased on the target range of the selected tool. Moreover, the thirdtouch gesture may enable the user to rotate the perspective 360 degreesaround the selected location of the dynamic image.

In embodiments, upon execution of the third touch gesture at thetargeting tool of the dynamic image, the selected tool is utilized onthe target object. For example, if the selected tool is an arrow or alaser, the arrow or laser is shot at the target object. Similarly, ifthe selected tool is a spell, the spell is cast at the target object.Once the selected tool has been utilized on the target object, thedynamic image may automatically adjust back to the perspective of theplayer object corresponding to the user. In some embodiments, thedynamic image may not automatically adjust back to the perspective ofthe player object corresponding to the user until the target object hasbeen eliminated or destroyed.

Having described embodiments of the present disclosure, an exemplaryoperating environment in which embodiments of the present disclosure canbe implemented is described below in order to provide a general contextfor various aspects of the present disclosure. Referring initially toFIG. 10 in particular, an exemplary operating environment forimplementing embodiments of the present disclosure is shown anddesignated generally as computing device 1000. Computing device 1000 isbut one example of a suitable computing environment and is not intendedto suggest any limitation as to the scope of use or functionality of thedisclosed embodiments. Neither should the computing device 1000 beinterpreted as having any dependency or requirement relating to any oneor combination of components illustrated.

The embodiments herein can be described in the general context ofcomputer code or machine-useable instructions, includingcomputer-executable instructions such as program modules, being executedby a computer or other machine, such as a personal data assistant orother handheld device. Generally, program modules including routines,programs, objects, components, data structures, etc., refer to code thatperform particular tasks or implement particular abstract data types.The described embodiments can be practiced in a variety of systemconfigurations, including hand-held devices, consumer electronics,general-purpose computers, more specialty computing devices, etc. Thedescribed embodiments can also be practiced in distributed computingenvironments where tasks are performed by remote-processing devices thatare linked through a communications network.

With reference to FIG. 10, computing device 1000 includes a bus 1010that directly or indirectly couples the following devices: memory 1012,one or more processors 1014, one or more presentation components 1016,input/output (I/O) ports 1018, input/output (I/O) components 1020, andan illustrative power supply 1022. In some example embodiments, thecomputing device 1000 can be or can comprise a mobile electronic devicesuch as a smart phone, tablet, touchscreen laptop, or the like. Bus 1010represents what can be one or more busses (such as an address bus, databus, or combination thereof). Although the various blocks of FIG. 10 areshown with lines for the sake of clarity, in reality, delineatingvarious components is not so clear, and metaphorically, the lines wouldmore accurately be grey and fuzzy. For example, one can consider apresentation component such as a display device to be an I/O component.Also, processors have memory. The inventor recognizes that such is thenature of the art, and reiterates that the diagram of FIG. 10 is merelyillustrative of an exemplary computing device that can be used inconnection with one or more embodiments of the present disclosure.Distinction is not made between such categories as “workstation,”“server,” “laptop,” “hand-held device,” etc., as all are contemplatedwithin the scope of FIG. 10 and reference to “computing device.”

Computing device 1000 typically includes a variety of computer-readablemedia. Computer-readable media can be any available media that can beaccessed by computing device 1000 and includes both volatile andnonvolatile media, and removable and non-removable media. By way ofexample, and not limitation, computer-readable media can comprisecomputer storage media and communication media. Computer storage mediaincludes both volatile and nonvolatile, removable and non-removablemedia implemented in any method or technology for storage of informationsuch as computer-readable instructions, data structures, program modulesor other data. Computer storage media includes, but is not limited to,RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM,digital versatile disks (DVD) or other optical disk storage, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to store thedesired information and which can be accessed by computing device 1000.Computer storage media does not comprise signals per se. Communicationmedia typically embodies computer-readable instructions, datastructures, program modules or other data in a modulated data signalsuch as a carrier wave or other transport mechanism and includes anyinformation delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared and other wireless media. Combinations of any ofthe above should also be included within the scope of computer-readablemedia.

Memory 1012 includes computer-storage media in the form of volatileand/or nonvolatile memory. The memory can be removable, non-removable,or a combination thereof. Exemplary hardware devices include solid-statememory, hard drives, optical-disc drives, etc. Computing device 1000includes one or more processors that read data from various entitiessuch as memory 1012 or I/O components 1020. Presentation component(s)616 present data indications to a user or other device. Exemplarypresentation components include a display device, speaker, printingcomponent, vibrating component, etc.

I/O ports 1018 allow computing device 1000 to be logically coupled toother devices including I/O components 1020, some of which can be builtin. Illustrative components include a microphone, joystick, game pad,satellite dish, scanner, printer, wireless device, etc. The I/Ocomponents 1020 can provide a natural user interface (NUI) thatprocesses air gestures, voice, or other physiological inputs generatedby a user. In some instances, inputs can be transmitted to anappropriate network element for further processing. An NUI can implementany combination of speech recognition, stylus recognition, facialrecognition, biometric recognition, gesture recognition both on screenand adjacent to the screen, air gestures, head and eye tracking, andtouch recognition (as described in more detail below) associated with adisplay of the computing device 1000. The computing device 1000 can beequipped with depth cameras, such as stereoscopic camera systems,infrared camera systems, RGB camera systems, touchscreen technology, andcombinations of these, for gesture detection and recognition.Additionally, the computing device 1000 can be equipped withaccelerometers or gyroscopes that enable detection of motion. The outputof the accelerometers or gyroscopes can be provided to the display ofthe computing device 1000 to render immersive augmented reality orvirtual reality.

As can be understood, embodiments of the present disclosure provide for,among other things, systems and methods for precise positioning on atouchscreen. The present disclosure has been described in relation toparticular embodiments, which are intended in all respects to beillustrative rather than restrictive. Alternative embodiments willbecome apparent to those of ordinary skill in the art to which thepresent disclosure pertains without departing from its scope. From theforegoing, it will be seen that embodiments of the present disclosureare one well adapted to attain all the ends and objects set forth above,together with other advantages which are obvious and inherent to thesystem and method. It will be understood that certain features andsubcombinations are of utility and can be employed without reference toother features and subcombinations. This is contemplated by and iswithin the scope of the claims.

The invention claimed is:
 1. A computer-implemented method for providingimproved targeting of a long-range object, the method comprising:displaying a dynamic image depicting objects of a multi-player game on atouchscreen, the dynamic image presenting a first isometric viewcorresponding to a first portion of a virtual world; while the firstisometric view is presented— receiving a first touch gesture at a toolselection area of the dynamic image, the tool selection area enabling auser to select a tool to utilize on a target object of the objectswithin the virtual world, and receiving a second touch gesture at amini-map, the mini-map providing a plan view of at least a portion ofthe virtual world; in response to the second touch gesture, adjustingthe dynamic image to present a second isometric view corresponding to asecond portion of the virtual world, the second portion corresponding tothe received second touch gesture, wherein the first portion and thesecond portion correspond to different areas of the virtual world; andreceiving a third touch gesture at a targeting tool of the adjusteddynamic image, the targeting tool depicting a target range of theselected tool within the adjusted dynamic image.
 2. Thecomputer-implemented method of claim 1, further comprising enabling theuser to make more precise targeting movements to target the targetobject within the adjusted dynamic image than within the dynamic image.3. The computer-implemented method of claim 1, further comprising,responsive to receiving the third touch gesture, utilizing the selectedtool on the target object.
 4. The computer-implemented method of claim3, further comprising, upon the selected tool being utilized on thetarget object, automatically adjusting the adjusted dynamic image topresent the first isometric view corresponding to the first portion ofthe virtual world.
 5. The computer-implemented method of claim 1,wherein the objects of the multi-player game comprise player objects andnon-player objects.
 6. The computer-implemented method of claim 1,wherein the dynamic image depicts the objects of the multi-player gamefrom the perspective of a player object corresponding to the user. 7.The computer-implemented method of claim 1, wherein the adjusted dynamicimage is further adjusted based on a target range of the selected tool.8. The computer-implemented method of claim 1, wherein the third touchgesture enables the user to rotate the perspective 360 degrees aroundthe second portion of the virtual world corresponding to the receivedsecond touch gesture.
 9. Non-transitory computer readable media storinginstructions that when executed by a processor cause the processor toperform operations for providing improved targeting of a long-rangeobject, the operations comprising: displaying a dynamic image depictingobjects of a multi-player game on a touchscreen, the dynamic imagepresenting a first portion of a virtual world from a first isometricperspective view; while the first portion of the virtual world ispresented— receiving a first touch gesture at a tool selection area ofthe dynamic image, the tool selection area enabling a user to select atool to utilized on a target object of the objects within the virtualworld, and receiving a second touch gesture at a mini-map, the mini-mapproviding a plan view of at least a portion of the virtual world; inresponse to the second touch gesture, adjusting the dynamic image topresent a second portion of the virtual world from a second isometricperspective view, the second portion corresponding to the receivedsecond touch gesture, wherein the first portion and the second portioncorrespond to different areas of the virtual world; and receiving athird touch gesture at a targeting tool of the adjusted dynamic image,the targeting tool depicting a target range of the selected tool withinthe adjusted dynamic image, wherein the targeting tool depicting thetarget range of the selected tool within the adjusted dynamic imageenables the user to make more precise targeting movements to target thetarget object within the adjusted dynamic image than within the dynamicimage.
 10. The non-transitory computer readable media of claim 9,further comprising, responsive to receiving the third touch gesture,utilizing the selected tool on the target object.
 11. The non-transitorycomputer readable media of claim 10, further comprising, upon theselected tool being utilized on the target object, automaticallyadjusting the adjusted dynamic image to present the first portion of thevirtual world.
 12. The non-transitory computer readable media of claim9, wherein the objects of the multi-player game comprise player objectsand non-player objects.
 13. The non-transitory computer readable mediaof claim 9, wherein the dynamic image depicts the objects of themulti-player game from the perspective of a player object correspondingto the user.
 14. The non-transitory computer readable media of claim 9,wherein the adjusted dynamic image is further adjusted based on a targetrange of the selected tool.
 15. The non-transitory computer readablemedia of claim 9, wherein the third touch gesture enables the user torotate the perspective 360 degrees around the second portion of thevirtual world.
 16. A system for providing improved targeting of along-range object, the system comprising: one or more processors; and anon-transitory computer storage media storing computer-useableinstructions that, when used by the one or more processors, cause theone or more processors to: display a dynamic image depicting objects ofa multi-player game on a touchscreen, the dynamic image presenting afirst portion of a virtual world from a first isometric perspectiveview; while the first portion of the virtual world is present— receive afirst touch gesture at a tool selection area of the dynamic image, thetool selection area enabling a user to select a tool to utilize on atargeted object of the objects within the virtual world, and receive asecond touch gesture at a mini-map, the mini-map providing a plan viewof at least a portion of the virtual world; in response to the secondtouch gesture, adjust the dynamic image to present a second portion ofthe virtual world from a second isometric perspective view, the secondportion corresponding to the received second touch gesture, wherein thefirst portion and the second portion correspond to different areas ofthe virtual world; and receive a third touch gesture at a targeting toolof the adjusted dynamic image, the targeting tool depicting a targetrange of the selected tool within the adjusted dynamic image, whereinthe third touch gesture enables the user to rotate the perspective 360degrees around the second portion of the virtual world.
 17. The systemof claim 16, further comprising enabling the user to make more precisetargeting movements to target the object within the adjusted dynamicimage than within the dynamic image.
 18. The system of claim 16, furthercomprising, responsive to receiving the third touch gesture, utilizingthe selected tool on the object.
 19. The system of claim 18, furthercomprising, upon the selected tool being utilized on the object,automatically adjusting the adjusted dynamic image back to present thefirst portion of the virtual world from the first isometric perspectiveview.
 20. The system of claim 16, wherein the adjusted dynamic image isfurther adjusted based on a target range of the selected tool.